
// #include <vector>
// #include <cstdint>

// #include <tenacitas_server/receiver.h>

// namespace ten_srv = tenacitas::server;

// namespace tenacitas {
//     namespace server {
//         namespace test1 {



//             typedef std::vector<unsigned char> message;

//             struct addresser_creator {
//                 typedef int16_t address;

//                 struct addresser {
//                     address receive_from( ) {
//                         return 301;
//                     }
                    
//                     address send_to( ) {
//                         return 302;
//                     }
//                 };
                
//                 static addresser create( ) {
//                     return addresser( );
//                 }
//             };
            
//             struct concurrency_policy_creator {
//                 struct concurrency_policy {

//                     template <typename t_message_processor>
//                     void operator( )( t_message_processor & p_message_processor,
//                                       const addresser_creator::address &
//                                       p_send_to ) {} 
//                 };


//                 static concurrency_policy create( ) {
//                     return concurrency_policy( );
//                 }
//             };
            
//             struct message_io_creator {
//                 struct message_io {
//                     bool operator( )( message & p_message ) {
                        
//                         return true;
//                     }
//                 };

//                 static message_io create( ) {
//                     return message_io( );
//                 }
//             };

            
//             struct message_handler_creator {
//                 struct message_handler {
//                     void operator( )( const addresser_creator::address &
//                                       p_send_to, const message & p_message ) {}
//                 };

//                 static message_handler create( ) {
//                     return message_handler( );
//                 }
//             };
            

//             typedef receiver <message, addresser_creator,
//                               concurrency_policy_creator, message_io_creator,
//                               message_handler_creator> test1_receiver;
            

//             static bool run( ) {
//                 test1_receiver l_receiver;

//                 l_receiver.start_sync( );
                
//                 return true;
//             }

//         }
//     }
    
// }
        
